package com.lihui.超过数组一半的数字;

import java.util.HashMap;
import java.util.Map;

public class Solution {
    /**
     * 代码中的类名、方法名、参数名已经指定，请勿修改，直接返回方法规定的值即可
     *
     * 
     * @param numbers int整型一维数组 
     * @return int整型
     */
    public int MoreThanHalfNum_Solution (int[] numbers) {
        Integer num = numbers.length / 2;
        Integer key = null;
        Map<Integer,Integer> map = new HashMap<>();
        for (int i = 0; i < numbers.length; i++) {
            int count = map.getOrDefault(numbers[i],0);
            map.put(numbers[i],count + 1);
        }
        for(Map.Entry<Integer,Integer> maps: map.entrySet()){
            if(maps.getValue()>num){
                key = maps.getKey();
                return key;
            }
        }
        return -1;
    }
}